
#ifndef RTACCEPTORBASE_H
#define RTACCEPTORBASE_H

#include "RtReferenceControl.h"
#include "RtReactorInterface.h"
#include "RtConnectionInterface.h"

class /*RT_API_EXPORT*/ CRtAcceptorBase 
	: public IRtAcceptor
	, public CRtReferenceControlSingleThread 
{
public:
	CRtAcceptorBase();
	virtual ~CRtAcceptorBase();

	// interface IRtReferenceControl
	virtual DWORD AddReference();
	virtual DWORD ReleaseReference();

	// interface IRtAcceptorConnectorId
	virtual BOOL IsConnector();

protected:
	CRtThread *m_pThreadNetwork;
	IRtReactor *m_pReactor;
	IRtReactor *m_pReactorNetwork;
	IRtAcceptorConnectorSink *m_pSink;
};

#endif // !RTACCEPTORBASE_H
